The present invention relates to a method for generating a parity-check code, and more particularly, to a method for re-scheduling a low density parity-check code to generate a re-scheduled low density parity-check code.
In the field of decoding a digital data, a low density parity-check codes (LDPC codes) is utilized to correct the error bit(s) of the digital data after transmitted over a noisy transmission channel. Please refer to FIG. 1. FIG. 1 is a diagram illustrating a conventional multi-stage graph 10 for correcting a seven-bit inputting digital data, i.e., the bit nodes v1, v2, v3, v4, v5, v6, v7, according to a LDPC codes C, wherein the LDPC codes C is represented by the following matrix:
  C  =            (                                    1                                1                                0                                0                                1                                0                                0                                                0                                1                                0                                0                                1                                0                                1                                                0                                0                                1                                0                                0                                1                                1                                                1                                0                                0                                1                                1                                1                                1                              )        .  
According to the multi-stage graph 10, the values of the bit nodes v1, v2, v3, v4, v5, v6, v7 are passed to four check nodes c1, c2, c3, c4 according to the paths between the bit nodes v1, v2, v3, v4, v5, v6, v7 and the check nodes c1, c2, c3, c4, in which the paths is generated in accordance with the LDPC codes C. Each check node performs a checking calculation upon the values of the bit nodes that directed to the respective check node. For example, the check node v1 checks the values of the bit nodes v1, v2, v5, and passes the results to the same bit nodes, i.e., v1, v2, v5. Therefore, a plurality of paths can be found from a bit node vi to a bit node vj on the conventional multi-stage graph 10.
Furthermore, since the parallel decoding of the LDPC codes C requires large memory and multiple processors, a parallel-serial manner can be utilized for decoding the bit nodes v1, v2, v3, v4, v5, v6, v7, in which the number of processors used in the parallel-serial manner is less than the parallel one. According to the parallel-serial manner, the check nodes c1, c2, c3, c4 of the multi-stage graph 10 are partitioned into a plurality of disjoint groups, i.e., two disjoint groups in this example, in which one group is comprised of the check nodes c1, c2, and the other group is comprised of the check nodes c3, c4. Then, a specific processors are assigned to compute the bit nodes, i.e., v1, v2, v5, v7, corresponding to the check nodes c1, c2 in a first cycle, and then the specific processors are assigned to compute the bit nodes, i.e., v1, v3, v4, v5, v6, v7, corresponding to the check nodes c3, c4 in a second cycle. In addition, depending on whether the partition is performed on the check nodes c1, c2, c3, c4 or the bit nodes v1, v2, v3, v4, v5, v6, v7, the multi-stage graph 10 is categorized into the vertical shuffled belief propagation (VSBP) and the horizontal shuffled belief propagation (HSBP). However, the conventional multi-stage graph 10, no matter the vertical shuffled belief propagation (VSBP) or the horizontal shuffled belief propagation (HSBP), does not consider the short cycle effect, in which the short cycle effect may affect the correctness of the results calculated by the check nodes c1, c2, c3, c4. Therefore, providing an accurate and efficient checking method for the digital data is a significant concern in the communication system.